package com.cubomagicogoias.controllers.inscricao;

import java.util.ArrayList;

import com.cubomagicogoias.model.Competicao;
import com.cubomagicogoias.model.Inscricao;
import com.cubomagicogoias.model.Modalidade;
import com.cubomagicogoias.model.Pessoa;
import com.cubomagicogoias.site.Controler;

public class Grava extends Controler {

	@Override
	public String execute() {

		Pessoa p = dao.procuraPessoa(sessao.loginEmail());
		Competicao c = dao.procuraCompeticao("GO11");
		Inscricao inscricao = dao.procuraInscricao(p, c);
		boolean nova = inscricao == null;
		if (nova) {
			inscricao = new Inscricao();
			inscricao.setPessoa(p.getId());
			inscricao.setCompeticao(c.getId());
		}

		ArrayList<Long> mds = new ArrayList<Long>();
		for (Modalidade m : dao.listaModalidades()) {
			String sel = req.getParameter("m" + String.valueOf(m.getId()));
			if (sel != null)
				mds.add(m.getId());
		}
		if (mds.size() == 0)
			inscricao.setModalides(null);
		else
			inscricao.setModalides(mds);
		inscricao.setAcompanhantes(req.getParameter("acompanhantes"));
		inscricao.setObservacoes(req.getParameter("observacoes"));
		inscricao.setOrigem(req.getParameter("origem"));
		if (req.getParameter("escola") != null) {
			inscricao.setEscola("Colégio Integrado Jaó");
			inscricao.setSerie(req.getParameter("serie"));
		} else{
			inscricao.setEscola(null);
			inscricao.setSerie(null);
		}
		if (req.getParameter("ehOficina") != null) {
			inscricao.setOficina(req.getParameter("oficina"));
		} else{
			inscricao.setOficina(null);
		}
		dao.persist(inscricao);

		return "inscricao.go11";
	}
}
